メモリスイッチの「BOOT装置」設定フロッピーを作成するプログラム

[ MEMSWBT ] 使用説明書

Version 2.0 Copyright (C) 2017,2024 まりも(DOSsoft)

 

【このアプリケーションソフトの目的】

 PC-98のシステムの問題の一つとして、ブートする装置の設定があります。この設定は「メモリスイッチ」と呼ばれる場所に記憶されますが、この設定を通常行うのはMS-DOSツールに含まれる SWITCH.EXE というプログラムですので、MS-DOSが起動できなくなってしまった場合に設定不可能になります。ブート装置の設定の問題のためにMS-DOSが起動できなくなることもあり得るわけで、鍵の掛かった箱の中に鍵があるような状態です。

 さらにブート装置の設定は、「ソフトウェアディップスイッチ」という記憶場所の設定も行わないと、設定保存ができないという仕組みになっており、しかもこれはデフォルトでは「メモリスイッチの設定を保存しない」側となっています。このように、ブートする装置の設定・変更は、実はかなり面倒な作業プロセスが必要となります。

 いまどきのPC-98は大抵はバッテリが劣化しており、電源断のたびに設定が初期化されてしまいがちです。ブート装置設定を「標準」以外にしないと起動できないような環境(たとえばIDEとSCSIのディスクが接続されているがIDEディスクをブート時に読みに行かれると不都合が生じるなど=IDEディスクがAT互換機でフォーマットされているなど)を構築してしまった人には、ブート装置の設定はとくに面倒なこととなります。

 これらの作業を一手で、しかも何も起動できない状態であってもSWITCHコマンドのブート装置設定相当のことが実行できるようにということを目指して、本アプリケーションを開発しました。

【フロッピーの作り方】

 まずPC-98の1.25MBでフォーマット(1024バイト8セクタ形式フォーマット)されたフロッピーディスク用意し、もっともドライブ番号が若いドライブに挿入しておきます。別途 FDloader作成ツール FDLDMKFD.EXE (*)も カレントディレクトリに用意しておきます。
(*) https://www7b.biglobe.ne.jp/~marimo9821/fdldrapp/fdldmkfd.html

 コマンドラインから

FDLDMKFD MEMSWBT.COM

とタイプして実行します(【注意】バージョン1の MEMSWBTとは手順が異なります)。すると書き込みが始まり、起動用FDが作られます。

このフロッピーはシステムからダイレクトに読まれる物であるため、通常のファイルシステムに則った形式では書かれていませんが、それでは何だかりませんので、dirコマンドで見るとこのプログラムの存在や目的らしきものが判読できるようにはなっています。

【フロッピーのアプリケーションの実行のしかた】

アプリケーションの起動方法には次の3通りがあります。
1.作成フロッピーを[ESC][HELP][8]押し起動で起動
2.通常のブートプロセスでフロッピーから起動
3.フロッピーを作らずに、DOS上で MEMSWBT.COM を直に実行

メモリスイッチの設定が既に不適切な値となっている場合、フロッピーから起動できなくなることがあります。そのときは[SHIFT][GRPH]押し起動によるソフトウェアスイッチ類の初期化起動を行わないとどうにも起動できなくなりますが、本フロッピーでは1.の手段により確実で早くブート装置の設定を変更できます。いわば最速起動のアプリケーションです。しかも2.3.はFDloaderを備えていない機種(主に486前期までの機種)でも使用できます。

 言うなれば、HELPキー押して電源を入れるだけで何があろうが起動できる、システムセットアップメニューの外部メディア版と考えたらよいでしょう。起動装置を頻繁に変更する方は、このフロッピーを常備しておくとよいでしょう。

 BOOT装置はSWITCHコマンドの場合と同様に選べます。画面にあるメニューで反転している項目を↑↓キーで選びリターンキーを押してください。なお特定の装置が選択されてあってそこからBOOTできない場合、フロッピーからの起動となります。

 なおハイレゾリューションモードでは使用できません。ハイレゾモード時は[ESC][HELP][8]押し起動をすると一旦ノーマルモードに移行しますが、そこで設定した内容はノーマルモードで有効なものであり、ハイレゾモードに戻っても保持されません。そもそもハイレゾモードではメモリスイッチによるBOOT装置という仕組みがありませんので、本アプリケーションはハイレゾモードでは使用できません。

【注意】

 本アプリケーションは、メモリスイッチの設定に加えて、『"ソフトウェアディップスイッチ"の"メモリスイッチ初期化をしない"』の設定を行いますが、「システムセットアップメニュー」でみると、「メモリスイッチ初期化をしない」が反映されていません。このメニューの設定まで変える方法がよく分かっていないため対応できませんが、実際にはメモリスイッチが保持されています。

 640KB専用フロッピー装置からの起動は、このアプリケーションの対象機としてありえないと思いますので、「1MBフロッピー起動」のみとしています。1MBとの両用装置で2DD 640KB/720KBのフロッピーからのブートはできます。

 本アプリケーションで作ったフロッピーは、それ全体としてアプリケーションソフトとなります。内容識別のため、ファイルらしきものがあるように見える状態にしてありますが、アクセスできません。またファイルシステム上はスキップセクタが多数ある状態に見えます。そこに本アプリケーション本体がありますので、削除もできません。ただしファイルシステムとして正しい状態にはなっていますので、フロッピーの空き領域にファイルを書き込んで使うことは問題ありません。

もしフロッピーをまっさらにしたい場合は強制フォーマットをしてください。
( format a: /m /u /p など /u オプションを使う)

 フロッピーディスクにセクタエラーがある場合、通常起動時にIPLだけ読めてアプリケーション本体が読みとりエラーとなる可能性があります。その場合エラーメッセージは出ませんが、通常より低いBEEP音が鳴り続けます。もしそのような音がしたらフロッピーディスク不良ということです。古いフロッピーディスクを使い回していると得てして起こりますので、留意しておいて下さい。[ESC][HELP][8]押し起動時に読みとりエラーが出た場合は、BIOSがDATA ERRORというメッセージを出します。

 このアプリケーションソフトでは i486命令セットを使用しているので、CPUが80286までの比較的初期の機種では使用できません。またそのような機種では本アプリケーションを利用する意味もないと考えられます。ディップスイッチがメカニカル式(本体前面の下部にある)で設定の手間が少ないですし、そもそもハードディスクを多数繋ぐ環境でもないでしょう。

 ハイレゾモードでは、固定ディスク起動の場面で起動パーティションを固定化するとそこからの起動となりますが、これを解除してフロッピーから強制起動するには、ITFチェックの後くらいのタイミングで[CTRL]キーを押します。これはハイレゾモードの仕様です。したがってハイレゾモードではメモリスイッチによる設定自体が必要ありません。旧バージョン1.00ではレゾリューションモードをチェックしていなかったので、ハイレゾモードで実行・設定できたかのようになります。しかし有害な作用を及ぼす可能性がありますので、旧バージョンをお持ちのかたはハイレゾモードで実行しないよう注意してください。

【お約束】

 適用したことによる影響について、作者は一切責任は負わないものとします。著作権は保持します。それだけですので、フリーソフトとしてご自由にお使い下さい。ソースプログラムはこちらにあります。

【改版履歴】
日付     版  内容
2017.10.31 1.00 公開初版
2017.11.24 1.01 版数表示、ハイレゾモードに関する注意の記述を追加
2024. 9. 8 2.00 FD作成方法をFDLDMKFD仕様に変更した,通常起動でも実行可能にした

[戻る]